﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.Collections.Generic;

namespace OpenGovernment
{
        public class QueryInfo
        {
            public int total { get; set; }
            public int count { get; set; }
            public string order { get; set; }
            public int from { get; set; }
        }

        public class Tags
        {
            public List<object> tagId { get; set; }
        }

        public class ExtraField
        {
            public string name { get; set; }
            public string value { get; set; }
            public object label { get; set; }
        }

        public class ExtraFields
        {
            public List<ExtraField> extraField { get; set; }
        }

        public class RelativeFEK
        {
            public string year { get; set; }
            public string fekNumber { get; set; }
            public string issue { get; set; }
        }

        public class Metadata
        {
            public object date { get; set; }
            public Tags tags { get; set; }
            public int decisionTypeId { get; set; }
            public int organizationId { get; set; }
            public int organizationUnitId { get; set; }
            public string protocolNumber { get; set; }
            public string subject { get; set; }
            public int signerId { get; set; }
            public object email { get; set; }
            public string isCorrectionOfAda { get; set; }
            public ExtraFields extraFields { get; set; }
            public RelativeFEK relativeFEK { get; set; }
            public object isCorrectedByAda { get; set; }
            public string relativeAda { get; set; }
        }

        public class Decision
        {
            public Metadata metadata { get; set; }
            public string url { get; set; }
            public string documentUrl { get; set; }
            public string ada { get; set; }
            public object submissionTimestamp { get; set; }
        }

        public class Model
        {
            public QueryInfo queryInfo { get; set; }
            public object expandedDecisions { get; set; }
            public List<Decision> decisions { get; set; }
            public object queryArgumentInfo { get; set; }
        }

        public class RootObject
        {
            public Model model { get; set; }
        }
        public class Get
        {
            public class Signer
            {
                public bool active { get; set; }
                public string position { get; set; }
                public int uid { get; set; }
                public string firstName { get; set; }
                public string lastName { get; set; }
                public string title { get; set; }
            }

            public class Signers
            {
                public List<Signer> signer { get; set; }
            }

            public class Model
            {
                public Signers signers { get; set; }
            }

            public class RootObject
            {
                public Model model { get; set; }
            }
        }
}
